有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何将下一个数组项设置为变量的新值?

我有一个字母表数组,如果用户有字母A,那么使用这个方法,用户的字母将从A变为B

public class Letter {
    private char letter;

    public Letter(){
        letter = 'A';
    }

public char volgende(){
        char[] alfabet = {'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'};
        for (int i=0; i <= alfabet.length-1 ; i++) {
            if (alfabet[i] == letter){
                letter = alfabet[i++];
            }
        }
        System.out.println("Nieuwe letter is " + letter);
        return letter;
    }

我希望这段代码将默认字母A转换为B,但它没有。我尝试过用字符“B”替换alfabet[I++],但这是可行的,所以我不知道为什么alfabet[I++]不会,因为它是数组中的下一项


共 (1) 个答案

  1. # 1 楼答案

    您正在使用后增量运算符。您需要使用预增量运算符,例如

    letter = alfabet[++i]

    顺便说一下,它是拼写字母表,请记住Z将导致IndexOutOfBoundsException错误,因为它是最后一个索引